package get

import "github.com/urfave/cli/v2"

func GetCmd() []*cli.Command {
	return []*cli.Command{
		{
			Name:  "config",
			Usage: "application config file",
			Flags: []cli.Flag{
				&cli.BoolFlag{Name: "all", Aliases: []string{"a"}},
				&cli.StringFlag{Name: "output", Aliases: []string{"o"}},
				&cli.StringFlag{Name: "id", Aliases: []string{"i"}},
			},
			Action: config,
		},
		{
			Name:  "instance",
			Usage: "applications",
			Flags: []cli.Flag{
				&cli.BoolFlag{Name: "all", Aliases: []string{"a"}},
				&cli.StringFlag{Name: "output", Aliases: []string{"o"}},
				&cli.StringFlag{Name: "id", Aliases: []string{"i"}},
				&cli.BoolFlag{Name: "containers", Aliases: []string{"c"}},
			},
			Action: instance,
		},
		{
			Name:   "vm",
			Usage:  "virtual machines",
			Action: vm,
		},
		{
			Name:   "machine",
			Usage:  "machines",
			Action: machine,
		},
		{
			Name:  "agent",
			Usage: "agents",
			Flags: []cli.Flag{
				&cli.BoolFlag{Name: "all", Aliases: []string{"a"}},
				&cli.StringFlag{Name: "output", Aliases: []string{"o"}},
				&cli.StringFlag{Name: "id", Aliases: []string{"i"}},
			},
			Action: agent,
		},
	}
}
